//栈的顺序存储实现
#define MAXSIZE 20 //储存数据元素的最大个数
typedef struct SNode *Stack;
struct SNode{
  ElementType Data[MAXSIZE];
  int Top;  //记录栈顶元素位置的变量组成
};
//1.入栈
void Push(Stack PtrS,ElementType item){
  if(PtrS->Top==MAXSIZE-1){
    printf("堆栈满");return;
  }else{
    PtrS->Data[++(PtrS->Top)]=item;
    return;
  }
}
//2.出栈
ElementType Pop(Stack PtrS){
  if(PtrS->Top==-1){
    printf("堆栈空");
    return ERROR; //ERROR是ElementType的特殊值，用来标志错误
  }
  else  return(PtrS->Data[(PtrS->Top)--]);

}